package com.zhangtai.modules.entity.salary;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zhangtai.config.LongJsonDeserializer;
import com.zhangtai.config.LongJsonSerializer;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
	

/**
 * 奖罚公司信息表
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2020-10-19 09:53:57
 */
@Data
@TableName("tb_award_applicant")
public class AwardApplicantEntity implements Serializable {
	private static final long serialVersionUID = 1L;

			/**
		 * id 自增长
		 */
				@TableId
		@JsonDeserialize(using = LongJsonDeserializer.class)
		@JsonSerialize(using = LongJsonSerializer.class)
			private Long id;
			/**
		 * 奖罚包id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long packageId;
			/**
		 * 流水号
		 */
			private String serialNum;
			/**
		 * 申请人id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long applicantId;
			/**
		 * 申请人姓名
		 */
			private String applicantName;
			/**
		 * 申请人部门
		 */
			private String department;
			/**
		 * 申请工号
		 */
			private String usercode;
			/**
		 * 审批状态 0未审批 1审批中 2 已审批 3作废
		 */
			private Integer approvalStatus;
			/**
		 * 分配状态  0未分配  1 分配中  2已分配
		 */
			private Integer distributionStatus;
			/**
		 * 奖罚总金额
		 */
			private BigDecimal amount;
			/**
		 * 是否删除
		 */
			private Integer isDelete;
			/**
		 * 附件
		 */
			private String url;
			/**
		 * 插入时间
		 */
			private Date insetDate;
			/**
		 * 创建时间
		 */
			private Date createTime;
			/**
		 * 创建人 code
		 */
			private String createCode;
			/**
		 * 备注
		 */
			private String remark;
			/**
		 * bpm地址
		 */
			private String bpmUrl;
			/**
		 * 部门id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long unitId;
	/**
	 * 公司id
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	private Long orgId;

	/**
	 * 公司
	 */
	private String orgname;


	/**
	 * 预留金额
	 */
	private BigDecimal reservedAmount;
	/**
	 * 预留类型
	 */
	private Integer reservedType;
	/**
	 * 奖罚类型
	 */
	private Integer awardType;
	/**
	 * 奖罚包名称
	 */
	private String awardName;
	/**
	 * 奖罚部门
	 */
	private String awardUnitname;
	/**
	 * 奖罚人员
	 */
	private String awardPersonnel;


	/**
	 * 奖励种类
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	private Long type;

	/**
	 * 分配金额
	 */
	private BigDecimal distributionAmount;

}
